package com.ruiysoft.controller.sms.api;

import com.ruiysoft.controller.sms.dto.ClerkDto;
import com.ruiysoft.controller.sms.dto.GreetingDto;
import com.ruiysoft.pub.core.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;

import javax.validation.Valid;
import java.util.List;

/**
 * Created by 化增光 on 2019/1/4.
 */
@javax.annotation.Generated(value = "io.swagger.codegen.languages.SpringCodegen", date = "2018-11-02T18:10:17.406+08:00")

@Api(value = "greeting", description = "the greeting API")
public interface GreetingApi {

    @ApiOperation(value = "获取店铺客服人员", nickname = "clerks", notes = "", response = ClerkDto.class, responseContainer = "List", tags={ "客服接口", })
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "successful operation", response = ClerkDto.class, responseContainer = "List") })
    @RequestMapping(value = "/shop/clerks",
            produces = { "application/json" },
            method = RequestMethod.GET)
    Result<List<ClerkDto>> clerks();


    @ApiOperation(value = "获取打招呼的人员", nickname = "shopGreetings", notes = "", response = ClerkDto.class, responseContainer = "List", tags={ "获取打招呼的人员", })
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "successful operation", response = ClerkDto.class, responseContainer = "List") })
    @RequestMapping(value = "/shop/greetings",
            produces = { "application/json" },
            method = RequestMethod.GET)
    Result<List<ClerkDto>> shopGreetings();


    @ApiOperation(value = "获取当前人员聊天记录", nickname = "clerks", notes = "", response = ClerkDto.class, responseContainer = "List", tags={ "客服接口", })
    @ApiResponses(value = {
            @ApiResponse(code = 200, message = "successful operation", response = ClerkDto.class, responseContainer = "List") })
    @RequestMapping(value = "/shop/messageRecord/{customer}/{customerService}",
            produces = { "application/json" },
            method = RequestMethod.GET)
    Result<List<GreetingDto>> messageRecord(
            @ApiParam(value = "分页开始页", required = true) @Valid @RequestParam(value = "pageStart", required = true) Integer pageStart,
            @ApiParam(value = "显示条数", required = true) @Valid @RequestParam(value = "pageSize", required = true) Integer pageSize,
            @ApiParam(value = "客户", required = true) @PathVariable("customer") Long customer,
            @ApiParam(value = "客服", required = true) @PathVariable("customerService") Long customerService);

}
